////https://www.nowcoder.com/practice/365d5722fff640a0b6684391153e58d8?tpId=182&tqId=34783&ru=/exam/oj
//
//class Gloves
//{
//public:
//    int findMinimum(int n, vector<int> left, vector<int> right)
//    {
//        int zero_sum = 0;
//        int left_sum = 0;
//        int right_sum = 0;
//        int left_min = INT_MAX;
//        int right_min = INT_MAX;
//
//        for (int i = 0; i < n; ++i)
//        {
//            if (left[i] == 0 || right[i] == 0)
//            {
//                zero_sum += left[i] + right[i];
//            }
//            else
//            {
//                left_sum += left[i];
//                right_sum += right[i];
//                left_min = min(left_min, left[i]);
//                right_min = min(right_min, right[i]);
//            }
//        }
//
//        int count = 1 + zero_sum + min(left_sum - left_min + 1, right_sum - right_min + 1);
//        return count;
//    }
//};